Parallel computers having a plurality of exemplary operation nodes connected via a network are known. For low-delay communications among the nodes in such a parallel computer, connections for communication control may be maintained among all the nodes.
Each of the nodes in a parallel computer has a network interface device for establishing a connection with a network. The network interface device may include a network interface controller or network interface card (hereinafter referred to as “NIC”). Each of the nodes uses a network interface device to communicate with other nodes via the network. Therefore, a massively parallel computer having tens of thousands of nodes requires a network interface device that is capable of maintaining tens of thousands of communication connections.
A computer of a Web server, a database server, or the like, may use a communication protocol such as HTTP (Hyper Text Transfer Protocol) that frequently connects and disconnects communications with terminals. To achieve higher processing speed in such a computer, the protocol processing load needs to be reduced on the processors to establish and cut off communication connections.
In recent years, network communication speed has greatly increased, for example, as seen in Gigabit Ethernet. In this trend, the communication processing accounts for a large proportion of processing by the processors of computers, and problems of the lower proportion of application program processing is becoming more serious. The term “application program” will be hereinafter referred to as the term “application”. Therefore, mounting of an offloading function is becoming more common, to offload part of the communication processing that is performed by processors conventionally to a network interface device.
Japanese Patent Application Laid-open Nos. 2006-191537 and 2003-333076 disclose techniques relating to an offloading function.
Japanese Patent Application Laid-open No. 2006-191537 discloses an offloading engine with which NICs perform communication processing.
Japanese Patent Application Laid-open No. 2003-333076 discloses a method of selectively offloading communication processing on a connection-unit basis by moving the communication context to a NIC after a processor establishes a communication connection.
With the NICs disclosed in Japanese Patent Application Laid-open No. 2006-191537, the capacity of the memory mounted in the offloading engine is smaller than the capacity of the main storage of each processor. Therefore, according to Japanese Patent Application Laid-open No. 2006-191537, the maximum number of communication connections among nodes is limited.
With the NICs disclosed in Japanese Patent Application Laid-open No. 2003-333076, the processing load on each processor to establish communication connections is large. Therefore, according to Japanese Patent Application Laid-open No. 2003-333076, the application processing capability of each processor is low.